Refinement Calculus, Part I: Sequential Nondeterministic Programs

نویسندگان

  • Ralph-Johan Back
  • Joakim von Wright
چکیده

A lattice theoretic framework for the calculus of program reenement is presented. Speciications and program statements are combined into a single (innnitary) language of commands which permits miraculous, angelic and demonic statements to be used in the description of program behavior. The weakest precondition calculus is extended to cover this larger class of statements and a game-theoretic interpretation is given for these constructs. The language is complete, in the sense that every monotonic predicate transformer can be expressed in it. The usual program constructs can be deened as derived notions in this language. The notion of inverse statements is deened and its use in formalizing the notion of data reenement is shown.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Calculus for Predicative Programming

A calculus for developing programs from specifications written as predicates that describe the relationship between the initial and final state is proposed. Such specifications are well known from the specification language Z. All elements of a simple sequential programming notation are defined in terms of predicates. Hence programs form a subset of specifications. In particular, sequential com...

متن کامل

A Refinement Theory for Concurrent Object Oriented Languages

A notion of refinement for concurrent object-oriented programs was originally presented in [3]. ln th.is article we prove that the refinement relation associated to this notion is a congruence with respect to various standard programming language constructors, including parallel and sequential composition, conditionals, and nondeterministic internal choice. We also establish a weaker compositio...

متن کامل

Building BSP Programs Using the Refinement Calculus

We extend the refinement calculus to permit the derivation of programs in the Bulk Synchronous Parallelism (BSP) style. This demonstrates that formal approaches developed for sequential computing can be generalised to (some) parallel computing environments, and may be useful for managing some of the details of programming in such situations.

متن کامل

A refinement calculus for logic programs

Existing refinement calculi provide frameworks for the stepwise development of imperative programs from specifications. This paper presents a refinement calculus for deriving logic programs. The calculus contains a wide-spectrum logic programming language, including executable constructs such as sequential conjunction, disjunction, and existential quantification, as well as specification constr...

متن کامل

Concurrent Refinement Algebra and Rely Quotients

The concurrent refinement algebra developed here is designed to provide a foundation for rely/guarantee reasoning about concurrent programs. The algebra builds on a complete lattice of commands by providing sequential composition, parallel composition and a novel weak conjunction operator. The weak conjunction operator coincides with the lattice supremum providing its arguments are non-aborting...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1989